using System;

namespace RxHeat.Tracing
{
    /// <summary>
    ///     The main contract for implementing a custom RxHeat trace sink.
    /// </summary>
    public interface IRxHeatTraceListner
    {
        /// <summary>
        ///     Writes error information
        /// </summary>
        /// <param name="exception">The exception.</param>
        /// <param name="traceDetails">The trace info.</param>
        void Error(Exception exception, TraceDetails traceDetails);

        /// <summary>
        ///     Writes trace information
        /// </summary>
        /// <param name="traceDetails">The trace info.</param>
        void Trace(TraceDetails traceDetails);
    }
}